﻿using System;
using System.Collections.Generic;
using System.Web.Security;

namespace rpxnow_library.membership
{
    [Serializable]
    public class OpenIdMembershipUser : MembershipUser
    {
        public class UserIdentifier
        {
            public string ProviderName { get; set; }
            public string Identifier { get; set; }
        }

        internal OpenIdMembershipUser()
        {
        }

        internal OpenIdMembershipUser(string providername,
                                      string username,
                                      object providerUserKey,
                                      string email,
                                      string passwordQuestion,
                                      string comment,
                                      bool isApproved,
                                      bool isLockedOut,
                                      DateTime creationDate,
                                      DateTime lastLoginDate,
                                      DateTime lastActivityDate,
                                      DateTime lastPasswordChangedDate,
                                      DateTime lastLockedOutDate,
                                      string realName,
                                      string url,
                                      string photo,
                                      IEnumerable<UserIdentifier> identifiers) :
            base(providername,
                                         username,
                                         providerUserKey,
                                         email,
                                         passwordQuestion,
                                         comment,
                                         isApproved,
                                         isLockedOut,
                                         creationDate,
                                         lastLoginDate,
                                         lastActivityDate,
                                         lastPasswordChangedDate,
                                         lastLockedOutDate)
        {
            this.realName = realName;
            this.url = url;
            this.photo = photo;
            this.identifiers = identifiers;
        }

        public string realName { get; set; }
        public string url { get; set; }
        public string photo { get; set; }
        public IEnumerable<UserIdentifier> identifiers { get; set; }
    }
}
